home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 014 / unixsubs.arc / REGEXP.TXT < prev    next >
Text File  |  1986-11-14  |  3KB  |  74 lines

  1. The Use of UNIX Regular Expressions
  2.  
  3. Regular Expressions are a standard function of the UNIX operating system.
  4. They are used to search for or replace text located within files or from the
  5. keyboard. The UNIX commands GREP (Global Regular Expression Print) and
  6. SUBS (SUBstitue Strings) are used to manipulate text via regular expressions.
  7.  
  8. There are various characters that the reuglar expression processor sees as
  9. having special meaning. These special characters are:
  10.  
  11. .       period      matches any alpha-numeric character
  12.  
  13. ^       caret       matches the beginning of the line
  14.                           grep ^#include
  15.                     will find all line beginning with #include
  16.  
  17. $       dollar      matches the end of the line
  18.                           grep }$
  19.                     will find all lines ending with a close brace
  20.  
  21. *       asterisk    Repeats any number of the last pattern. Includes
  22.                     zero repetitions.
  23.                           grep  test*
  24.                     finds lines with at least one occurence of test.
  25.  
  26. []      brakets     specifies a set of given characters.
  27.                           grep ^[abcd0123]
  28.                     will find lines begining with any one of the
  29.                     specified characters.
  30.  
  31. -       hyphen      denotes a range of characters.
  32.                           grep [A-Z0-9]$
  33.                     finds lines ending in a capital letter or a number.
  34.  
  35. \       backslash   removes the special characteristics of a character.
  36.                           grep \$
  37.                     finds dollar signs in a line of text.
  38.  
  39. NOTE:   When the caret (^) is used as the first character after a left
  40.         square braket, it reverses the meaning of the search.
  41.                 grep [^A-Z]&
  42.         will find all lines not ending with a capital letter.
  43.                 grep ^[^A-Z]
  44.         will find all lines not begining with a capital letter. Note that
  45.         in this case the caret is used in both contexts.
  46.  
  47. Pattern Segments
  48.  
  49. One of the powerful functions of the SUBS command is the ability to
  50. rearrange the internal structure of text lines. This is done by the use of
  51. pattern segments. While searching through the lines of text, certain patterns
  52. may be given identification numbers. The command can then selectively delete
  53. or rearrange the numbered segments.
  54.  
  55. \(      denotes the beginning of a segment.
  56. \)      denotes the end of a segment.
  57. \#\     denotes the segement in the second part of the SUBS command.
  58.  
  59. The best way to understand this usage is by example.
  60.  
  61. Say that you need to prepare a list of all 'C' source code but you want
  62. to replace the '.C' extent with '.OBJ' the following SUBS command will
  63. do just that.
  64.  
  65.         SUBS "\(.*\)\.c" "\1\.OBJ"
  66.  
  67. In this command the use of the '.*' within the first segment is a powerful
  68. construction. It is the same as the DOS '*' wild card. The period followed by
  69. the asterisk means repeat any character any number of times. The name of the
  70. file is the first part of the search. The \1\ calls for the replacement of
  71. only the file name followed by the .OBJ .
  72.  
  73.  
  74.